home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Resources / Audio, Video & Photo / Audacity 1.3.5 / audacity-win-unicode-1.3.5.exe / {app} / Plug-Ins / beat.ny next >
Lisp/Scheme  |  2007-10-16  |  722b  |  22 lines

  1. ;nyquist plug-in
  2. ;version 1
  3. ;type analyze
  4. ;name "Beat Finder..."
  5. ;action "Finding beats..."
  6. ;info "Released under terms of the GNU General Public License version 2"
  7.  
  8. ;control thresval "Threshold Percentage" int "" 65 5 100
  9. (setf s1 (if (arrayp s) (snd-add (aref s 0) (aref s 1)) s))
  10. (defun signal () (force-srate 1000 (lp (snd-follow (lp s1 50) 0.001 0.01 0.1 512) 10)))
  11. (setq max (peak (signal) NY:ALL))
  12. (setq thres (* (/ thresval 100.0) max))
  13. (setq s2 (signal))
  14. (do ((c 0.0) (l NIL) (p T) (v (snd-fetch s2))) ((not v) l)
  15.  (if (and p (> v thres)) (setq l (cons (list c "B") l)))
  16.  (setq p (< v thres))
  17.  (setq c (+ c 0.001))
  18.  (setq v (snd-fetch s2)))
  19.  
  20. ; arch-tag: 2204686b-2dcc-4891-964a-2749ac30661b
  21.  
  22.